export const flattenNodes = (node) => {
	let result = [node]; // 将 node 放在数组第一个位置
	if (node.childNode) {
		// 如果存在子节点，则递归处理它的子节点并依次插入结果数组
		result = result.concat(flattenNodes(node.childNode));
	}
	if (node.conditionNodes) {
		// 如果存在条件节点，则递归处理每个条件节点的子节点并依次插入结果数组
		node.conditionNodes.forEach((conditionNode) => {
			result.push(conditionNode);
			result = result.concat(flattenNodes(conditionNode));
		});
	}
	return result;
};

export function isIterable(obj) {
	return obj !== null && typeof obj[Symbol.iterator] === 'function';
}
// 返回去除前缀的字符串
export function removePrefix(str, prefix) {
	// console.log('参数---》')
	if (str.startsWith(prefix)) { // 如果 str 以 prefix 开头
		return str.slice(prefix.length + 1); // 将前缀和 "_" 去掉并返回剩下的部分
	} else { // 如果 str 不以 prefix 开头
		return str; // 直接返回 str（不做任何处理）
	}
}